home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Atari Compendium
/
The Atari Compendium (Toad Computers) (1994).iso
/
files
/
umich
/
utils
/
wnx1091.lzh
/
XESMACRO.S
< prev
Wrap
Text File
|
1991-10-15
|
3KB
|
197 lines
xes_call macro
move.w #-1,-(a7)
trap #5
endm
xes_submit macro
move.l #parmblk,-(a7)
move.w #-1,-(a7)
xes_call
endm
xes_init macro
* \1 = address of parameter block.
move.l \1,-(a7)
move.w #0,-(a7)
trap #5
endm
xes_rsrcinit macro
* \1 = fixup flag (0 to fix, nonzero to not fix)
* \2 = scaling method.
* \3 = address of binary resource tree to fix up.
move.w \1,WNX_in
move.w \2,WNX_in+2
move.l \3,WNX_in+4
move.l #parmblk,-(a7)
move.w #1,-(a7)
xes_call
* old method:
*move.l #parmblk,-(a7)
*move.l \1,-(a7)
*move.w #1,-(a7)
*trap #5
endm
xes_sibling macro
* \1.L = address of 16 byte string (not necessarily null terminated) to
* check for in the WNX i.d. field of the parmblks of other WNXes...
move.l \1,WNX_in
move.l #parmblk,-(a7)
move.w #2,-(a7)
xes_call
endm
xes_mesagwrite macro
* \1.L = pointer to recipient list...
* \2.W = length (in bytes) of message (including XES header which is 16 bytes)
* \3.L = pointer to message
move.l \1,WNX_in
move.w \2,WNX_in+4
move.l \3,WNX_in+6
move.l #parmblk,-(a7)
move.w #4,-(a7)
xes_call
endm
xes_malloc macro
* \1.L = amount of memory to allocate.
move.l \1,WNX_in
move.l #parmblk,-(a7)
move.w #38,-(a7)
xes_call
endm
xes_flush macro
move.l #parmblk,-(a7)
move.w #39,-(a7)
xes_call
endm
xes_genv macro
move.l #parmblk,-(a7)
move.w #40,-(a7)
xes_call
endm
xes_pwindow macro
move.l #parmblk,-(a7)
move.w #41,-(a7)
xes_call
endm
xes_draw macro
* \1.W = index of starting object to draw.
* \2.W = index of ending object to draw.
move.w \1,WNX_in
move.w \2,WNX_in+2
move.l #parmblk,-(a7)
move.w #42,-(a7)
xes_call
endm
xes_redraw macro
* \1.W = handle of the window to redraw.
* \2.W = -1 if to align tree to window's work area x,y coords.
* \3.L = pointer to the resource tree to use for redraw.
* \4.W = 0 to suppress the actual redrawing (i.e. just align the
* .RSC to the window's work area... used during WM_MOVED
* messages, which may or may not need a true redraw...
move.w \1,WNX_in
move.w \2,WNX_in+2
move.l \3,WNX_in+4
move.w \4,WNX_in+8
move.l #parmblk,-(a7)
move.w #43,-(a7)
xes_call
endm
xes_chrsrc macro
* \1.W = requested tree's index.
move.w \1,WNX_in
move.l #parmblk,-(a7)
move.w #50,-(a7)
xes_call
endm
xes_stredit macro
* \1.W = handle of the window the resource is in.
* \2.L = address of the resource the editable text object is in.
* \3.W = index of the object to edit (must be F_text or F_boxtext)
* \4.W = input character.
* \5.W = -1 or current cursor position.
* (NOTE: -1 places cursor at end of the string)
move.w \1,WNX_in
move.l \2,WNX_in+2
move.w \3,WNX_in+6
move.w \4,WNX_in+8
move.w \5,WNX_in+10
move.l #parmblk,-(a7)
move.w #64,-(a7)
xes_call
endm
xes_xformdo macro
* \1.W = handle of the window the resource is in.
* \2.L = address of the resource tree to check.
* \3.W = index of the object clicked on, -1 if unknown.
move.w \1,WNX_in
move.l \2,WNX_in+2
move.w \3,WNX_in+6
move.l #parmblk,-(a7)
move.w #65,-(a7)
xes_call
endm